#define _CRT_SECURE_NO_WARNINGS 1
/*
		实现顺序表的增删

		2024年4月23日

		夏思成

		西科大15号公寓楼
*/

#include "Seqlist.h"

//void SeqlistTest()
//{
//	//创建顺序表
//	SL sl = { 0 };
//
//	//测试尾插
//	SLPushBack(&sl, 1);
//	//SLPrint(&sl);
//	SLPushBack(&sl, 2);
//	//SLPrint(&sl);
//	SLPushBack(&sl, 3);
//	//SLPrint(&sl);
//	SLPushBack(&sl, 4);
//	SLPrint(&sl);//1 2 3 4
//	//SLPushBack(&sl, 5);
//	//SLPrint(&sl);
//
//	//测试头插
//	//SLPushFront(&sl,5);
//	//SLPrint(&sl);
//
//	//测试尾部删除
//	//SLPopBack(&sl);
//	//SLPrint(&sl);
//	//SLPopBack(&sl);
//	//SLPrint(&sl);
//	//SLPopBack(&sl);
//	//SLPrint(&sl);
//	//SLPopBack(&sl);
//	//SLPrint(&sl);
//	//SLPopBack(&sl);
//
//	//测试头部删除
//	//SLPopFront(&sl);
//	//SLPrint(&sl);
//	//SLPopFront(&sl);
//	//SLPrint(&sl);
//	//SLPopFront(&sl);
//	//SLPrint(&sl);
//	//SLPopFront(&sl);
//	//SLPrint(&sl);
//	//SLPopFront(&sl);
//
//	//测试在指定位置插入数据
//	//SLInsert(&sl,sl.size,99);
//	//SLPrint(&sl);// 1 2 3 4 99
//
//	//测试删除指定位置的数据
//	SLErase(&sl,2);//1 2 4
//	SLPrint(&sl);
//}

//void ContactTest()
//{
//	contact con;
//
//	//通讯录初始化
//	InitContact(&con);
//
//	//向通讯录添加数据
//	AddContact(&con);
//	AddContact(&con);
//	ShowContact(&con);
//
//	//修改数据
//	ModifyContact(&con);
//	ShowContact(&con);
//
//	//删除通讯录内容
//	DelContact(&con);
//	ShowContact(&con);
//
//	//查找数据
//	FindContact(&con);
//
//	//通讯录销毁
//	DestroyContact(&con);
//}

void menu()
{
	printf("***********************************\n");
	printf("****1.联系人添加***2.联系人删除****\n");
	printf("****3.联系人查找***4.联系人修改****\n");
	printf("****5.联系人展示***0.退出通讯录****\n");
	printf("***********************************\n");
}

int main()
{
	//SeqlistTest();
	//ContactTest();

	//实现通讯录项目
	//创建通讯录
	contact con;

	//通讯录初始化
	InitContact(&con);

	int input = 0;
	
	do
	{
		menu();
		printf("请选择要使用的功能：\n");
		scanf("%d", &input);

		switch (input)
		{
			case 1:
				AddContact(&con);
				break;
			case 2:
				DelContact(&con);
				break;
			case 3:
				FindContact(&con);
				break;
			case 4:
				ModifyContact(&con);
				break;
			case 5:
				ShowContact(&con);
				break;
			case 0:
				//退出通讯录之前，先将刚才写入到数据写到文件中
				PreserveContact(&con);
				printf("退出通讯录！\n");
				//通讯录销毁
				DestroyContact(&con);
				break;
			default:
				printf("选择错误，请重新选择：\n");
				break;
		}

	}
	while (input);
	return 0;
}